Memory Hierarchy Utilization of a SAT Solver
نویسندگان
چکیده
2 The project analyzes the hardware utilization of a SAT solver. The analysis is done using statistical profiling and tracing the following processor events: total cycles, resource stall cycles, level 2 cache hits and level 2 cache misses. The HPC Toolkit is used to perform the analysis on top of the PAPI library. The used benchmark is a part of the SAT competition 2009 application benchmark. The analysis has additionally been done on two well known solver MiniSAT and Pre-coSAT and unveiled similar utilization problems as in the project SAT solver. Its result is that the utilization can be increased for example by improving the clause representation , using the prefetch unit of the CPU and maintaining frequently used data structures lazily. The combination of the suggested improvements speed up the project SAT solver by 60%. The runtime improvement is mainly caused by fewer main memory and level 2 cache accesses.
منابع مشابه
On Computing Minimum Unsatisfiable Cores
Certifying a SAT solver for unsatisfiable instances is a computationally hard problem. Nevertheless, in the utilization of SAT in industrial settings, one often needs to be able to generate unsatisfiability proofs, either to guarantee the correctness of the SAT solver or as part of the utilization of SAT in some applications (e.g. in model checking). As part of the process of generating unsatis...
متن کاملA Solver for Quantified Formula Problem Q-ALL SAT
Problem Q-ALL SAT demands solving a quantified Boolean formula that involves two propositional formulas in conjunctive normal form (CNF). When the first formula has no clauses and thus is trivial, Q-ALL SAT becomes the standard quantified Boolean formula (QBF) at the second level of the polynomial hierarchy. In general, Q-ALL SAT can be converted to second-level QBF by well-known transformation...
متن کاملCollection Level Polymorphism : A path to High Performance C + + Applications Edward
In this paper we present a C++ implementation of a numerical solver for the Euler equations about rotating geometries (Turbomachinery). This implementation represents a working prototype C++ solver which obtains performances comparable to a reference Fortran application. We obtain this performance by providing abstractions at the level of collections of objects , thus minimizing the introductio...
متن کاملHyParSAT : A Hybrid Parallel Complete SAT Solver Using Parallel
In this project, I have proposed and thoroughly discussed HyParSAT which is a new hybrid approach of a parallel complete SAT solver for shared memory multiprocessor (SMP) parallel computers. It is highly configurable and scalable with respect to the number of available processors. Almost all of the existing parallel SAT solvers designed for SMP computers, uses either a portfolio approach or a d...
متن کاملASPQ: An ASP-Based 2QBF Solver
Answer Set Programming (ASP) is an established logic-based programming paradigm which has been successfully applied for solving complex problems. Since ASP can model problems up to the second level of the polynomial hierarchy, it can be used to model and solve the 2QBF problem. In this paper we show how to obtain a fairly effective 2QBF solver by just resorting to state-of-the-art ASP solvers.
متن کامل